package com.ddxz.tool.core.common;

import java.util.List;

/**
 * interface description
 *
 * @author 朱宗刚
 * @version 1.0.0
 * @date 2020/7/31
 */

public interface DdxzTree {
    /**
     * 树形节点的唯一标识
     * @return 标识
     */
    String getId();

    /**
     * 节点名称
     * @return 名称
     */
    String getName();

    /**
     * 节点状态
     * 1 未选中；2 已选中；3 部分选中
     * @return 状态信息
     */
    Integer getState();

    /**
     * 树形节点中子节点的集合
     * @return 子节点
     */
    List<DdxzTree> getChildren();

    /**
     * 设定节点的选中状态
     * @param state 状态值必须是NONE_SELECTED，PART_SELECTED，或者 ALL_SELECTED
     */
    void setState(Integer state);

    int NONE_SELECTED = 1;
    int PART_SELECTED = 3;
    int ALL_SELECTED = 2;
}
